package com.joysuch.wwyt.bp.entity.dto;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.joysuch.wwyt.common.entity.UserDataEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author jingwk
 * @since 2021-05-28
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("wwyt_bp_storage_tank")
@ApiModel(value="BpStorageTank对象", description="")
public class BpStorageTankDto extends UserDataEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "ID")
    @TableId(value = "ID", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "储罐区ID")
    @TableField("STORAGE_TANK_AREA_ID")
    private Long storageTankAreaId;

    @ApiModelProperty(value = "统一编码")
    @TableField("UNI_CODE")
    private String uniCode;

    @ApiModelProperty(value = "储罐名称")
    @TableField("NAME")
    private String name;

    @ApiModelProperty(value = "所属罐组编号")
    @TableField("BELONG_GROUP_CODE")
    private String belongGroupCode;

    @ApiModelProperty(value = "编码")
    @TableField("CODE")
    private String code;

    @ApiModelProperty(value = "储罐容积(m3)")
    @TableField("VOLUME")
    private Float volume;

    @ApiModelProperty(value = "储罐形式")
    @TableField("TYPE")
    private String type;

    @ApiModelProperty(value = "储罐结构")
    @TableField("ARCH")
    private String arch;

    @ApiModelProperty(value = "储罐材质")
    @TableField("MATERIAL")
    private String material;

    @ApiModelProperty(value = "储罐位置分类")
    @TableField("LOCATION_CATEGORY")
    private String locationCategory;

    @ApiModelProperty(value = "是否为压力容器")
    @TableField("IS_PRESSURE_CONTAINER")
    private String isPressureContainer;

    @ApiModelProperty(value = "压力等级")
    @TableField("PRESSURE_LEVEL")
    private String pressureLevel;

    @ApiModelProperty(value = "是否高危储罐")
    @TableField("IS_DANGEROUS_TANK")
    private String isDangerousTank;

    @ApiModelProperty(value = "是否设置自动喷淋")
    @TableField("IS_SET_AUTOMATIC_SPRAY")
    private String isSetAutomaticSpray;

    @ApiModelProperty(value = "是否构成高危储罐")
    @TableField("IS_FORM_DANGEROUS_TANK")
    private String isFormDangerousTank;

    @ApiModelProperty(value = "有无围堰")
    @TableField("HAS_COFFERDAM")
    private String hasCofferdam;

    @ApiModelProperty(value = "围堰所围面积(㎡)")
    @TableField("COFFERDAM_AREA")
    private Float cofferdamArea;

    @ApiModelProperty(value = "进出料方式")
    @TableField("IN_OUT_METHOD")
    private String inOutMethod;

    @ApiModelProperty(value = "安全设备")
    @TableField("SAFE_DEVICE")
    private String safeDevice;

    @ApiModelProperty(value = "是否配套火炬")
    @TableField("IS_PROVIDE_TORCH")
    private String isProvideTorch;

    @ApiModelProperty(value = "是否设置保温/保冷")
    @TableField("IS_PROVIDE_HEAT_PRESERVATION")
    private String isProvideHeatPreservation;

    @ApiModelProperty(value = "是否设置消防水炮/泡沫炮")
    @TableField("IS_PROVIDE_FIRE_WATER_MONITOR")
    private String isProvideFireWaterMonitor;

    @ApiModelProperty(value = "投产日期")
    @TableField("COMMISSIONING_DATE")
    private Date commissioningDate;

    @ApiModelProperty(value = "设计储量(m3)")
    @TableField("DESIGN_STORAGE_VOLUME")
    private Float designStorageVolume;

    @ApiModelProperty(value = "设计压力(Pa)")
    @TableField("DESIGN_PRESSURE")
    private Float designPressure;

    @ApiModelProperty(value = "操作压力上限(Pa)")
    @TableField("OP_PRESSURE_HIGH_VALUE")
    private Float opPressureHighValue;

    @ApiModelProperty(value = "操作压力下限(Pa)")
    @TableField("OP_PRESSURE_LOW_VALUE")
    private Float opPressureLowValue;

    @ApiModelProperty(value = "操作温度上限(℃)")
    @TableField("OP_TEMPERATURE_HIGH_VALUE")
    private Float opTemperatureHighValue;

    @ApiModelProperty(value = "操作温度下限(℃)")
    @TableField("OP_TEMPERATURE_LOW_VALUE")
    private Float opTemperatureLowValue;

    @ApiModelProperty(value = "工作温度上限(℃)")
    @TableField("WORK_TEMPERATURE_HIGH_VALUE")
    private Float workTemperatureHighValue;

    @ApiModelProperty(value = "工作温度下限(℃)")
    @TableField("WORK_TEMPERATURE_LOW_VALUE")
    private Float workTemperatureLowValue;

    @ApiModelProperty(value = "工作压力上限(Pa)")
    @TableField("WORK_PRESSURE_HIGH_VALUE")
    private Float workPressureHighValue;

    @ApiModelProperty(value = "工作压力下限(Pa)")
    @TableField("WORK_PRESSURE_LOW_VALUE")
    private Float workPressureLowValue;

    @ApiModelProperty(value = "设计液位高度(m)")
    @TableField("DESIGN_LIQUID_LEVEL")
    private Float designLiquidLevel;

    @ApiModelProperty(value = "液位计类型")
    @TableField("LIQUIDOMETER_TYPE")
    private String liquidometerType;

    @ApiModelProperty(value = "高液位报警(m)")
    @TableField("LIQUID_LEVEL_ALARM_HIGH1")
    private Float liquidLevelAlarmHigh1;

    @ApiModelProperty(value = "高高液位报警(m)")
    @TableField("LIQUID_LEVEL_ALARM_HIGH2")
    private Float liquidLevelAlarmHigh2;

    @ApiModelProperty(value = "低液位报警(m)")
    @TableField("LIQUID_LEVEL_ALARM_LOW1")
    private Float liquidLevelAlarmLow1;

    @ApiModelProperty(value = "底底液位报警(m)")
    @TableField("LIQUID_LEVEL_ALARM_LOW2")
    private Float liquidLevelAlarmLow2;

    @ApiModelProperty(value = "所在位置")
    @TableField("LOCATION")
    private String location;

    @ApiModelProperty(value = "高危储罐自控系统")
    @TableField("DANGEROUS_CONTROL_SYSTEM")
    private String dangerousControlSystem;

    @ApiModelProperty(value = "是否构成重大危险源")
    @TableField("IS_FORM_MAJOR_HAZARD")
    private String isFormMajorHazard;

    @ApiModelProperty(value = "所属危险化学品重大危险源单元")
    @TableField("MAJOR_HAZARD_ID")
    private String majorHazardId;


}
